package 异常处理;

public class ExceptionDemo12 {
	//该方法出现ArithmeticException异常，属于RuntimeException的子类
	//是个非检验异常，不用try-catch块捕获也可以编译
	static void method1()
	{
		int n=10/0;
		System.out.println("n="+n);
	}
	//该方法出现InterruptedException异常，不是RuntimeException的子类
	//是检验异常不用try-catch块捕获则无法编译
	//第一个解决无法通过编译的方法
	/**static void method2()  
	{
		try {
			throw new InterruptedException();
		} catch (InterruptedException e) {
			// TODO Auto-generated catch block
			//e.printStackTrace();//在命令行打印异常信息在程序中出错的位置及原因
			System.out.println(e.getMessage());
		}
	}

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		method1();
		method2();

	}

}*/
	//第二个解决无法通过编译的方法
	static void method2()  throws InterruptedException
	{
		try {
			throw new InterruptedException();
		} catch (InterruptedException e) {
			throw new InterruptedException();
		}
	}

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		method1();
		try
		{
		method2();
		}
		catch (InterruptedException e) {
			System.out.println(e.getMessage());
		}

	}

}
